FLIR Atlas Android SDK's purpose is to provide a simple and reliable API for interacting with FLIR files, cameras and measurement tools.
The SDK is partitioned into "parts" corresponding to specific functionally e.g.:
device | discover | connect | import images | live stream | live measurements | remote control |
---|---|---|---|---|---|---|
FLIR ONE | V | V | N/A | V | V** | V*** |
WiFi Camera | V | V | V | V* | V** | V**** |
Meterlink | V | V | V | N/A | V** | N/A |
fusion = mThermalImage.getFusion(); fusion.setMsx(1.5); fusion.setFusionMode(FusionMode.MSX);
mThermalImageFile.getStatistics().average;
There a are two emulators that can be used without FLIR hardware to scan and get live images.
See code in sample applications (in particular "AndroidSampleKotlin") and the usage of CommunicationInterface.EMULATOR
.
The FLIR ONE emulator can be used during development for FLIR ONE applications without the need of a real FLIR ONE dongle, the emulator provides pre-recorded sequence of images. The name presented by the emulator is "EMULATED FLIR ONE".
The generic emulator provides a more generic form of streaming data. The name presented by the emulator is "C++ EmulatorId: YYY" where YYY is a number.
Add the provided release packages into your project (i.e. AAR on Android). See specific instructions in the documentation provided for each platform.
ThermalSdkAndroid.init(android.content.Context context);
ThermalImageFile image = (ThermalImageFile) ImageFactory.createImage("<external_storage>/FLIR/images/ir.jpg");
android.graphics.Bitmap bitmap = BitmapAndroid.createBitmap(image.getImage()).getBitMap();
ThermalSdkAndroid.init(android.content.Context context);
DiscoveryFactory.getInstance().scan(aDiscoveryEventListener, CommunicationInterface.NETWORK);
camera.connect(identity, aConnectionStatusListener);
Camera.connect()
method is blocking and it is mandatory to call this function from a background thread.camera.getImporter();
to get a "Importer" to import images from a network camera importer.listImages(...);
to list files on the network camera importer.importFiles(...);
to import a list of files from the network cameraThermalSdkAndroid.init(android.content.Context context);
DiscoveryManager.getInstance().scan(aDiscoveryEventListener, CommunicationInterface.USB);
DiscoveryManager.getInstance().scan(aDiscoveryEventListener, CommunicationInterface.INTEGRATED);
camera.connect(identity, aConnectionStatusListener);
Camera.connect()
method is blocking and it is mandatory to call this function from a background thread.Camera.getStreams()
, Stream.start()()
and ThermalStreamer
to get a stream of images, these images can then be shown as the live stream on the UIFor more information please see the included Java / Android / iOS documentation and sample applications in each release package.